// 定义时间范围类型
export interface TimeRange {
  start: Date;
  end: Date;
}

// 定义点数据类型
export interface PointData {
  longitude: number;
  latitude: number;
  time: string;
  hoverContent: string;
  location: string; // 新增地点字段
}

// 定义合并后的点数据类型
export interface MergedPoint {
  longitude: number;
  latitude: number;
  contents: {
    time: string;
    hoverContent: string;
    location: string; // 新增地点字段
  }[];
  count: number;
}

// 定义选中点的类型
export interface SelectedPoint {
  point: MergedPoint;
  marker: any; // 使用any避免循环依赖，实际类型为L.Marker
  index: number;
}

// 定义搜索结果类型
export interface SearchResult {
  data: PointData;
  index: number;
  matchedField: 'content' | 'location' | 'both';
} 